package lib

import (
	"com.jtthink/goft_redis/godis"
	"encoding/json"
	"fmt"
	"log"
)

func NewsDBGetter(id string, cache *godis.SimpleCache, key string) godis.DBGetFunc {

	return func() string {
		log.Println("数据库获取")

		stu := NewStu()
		Gorm.Table("stu").Where("stuNo=?", id).Find(stu)

		b, err := json.Marshal(stu)

		if err != nil {
			log.Println(err)
		}

		if stu.StuNo == "" {
			fmt.Println("--数据库里没有这个数据--")
			cache.Policy.IfNull(key, "0")
		} else {
			cache.SetCache(key, b)
		}

		return string(b)
	}

}
